package com.zzedu.enmuns;

import java.util.Arrays;

/**
 * 单词属性枚举
 * <p>
 * 对应 此词性组合为 code+"_"+code 例如名词图片类型 n_image(名词图片),n_audio(名词音频), 如单独为 audio、image 则表示通用属性
 */
public enum WordsAttrEnum {

    sentence("sentence", "句型"),

    image("image", "图片"),

    audio("audio", "音频"),
    video("video", "视频"),

    wordAttr("wordAttr", "词性"),
    /**
     * 名词
     */
    Noun("n", "名词"),
    /**
     * 动词
     */
    Verb("v", "动词"),
    /**
     * 形容词
     */
    Adjective("adj", "形容词"),
    /**
     * 副词
     */
    Adverb("adv", "副词"),
    /**
     * 代词
     */
    Pronoun("pron", "代词"),
    /**
     * 数词
     */
    Numeral("num", "数词"),
    /**
     * 冠词
     */
    Article("art", "冠词"),
    /**
     * 介词
     */
    Preposition("prep", "介词"),
    /**
     * 连词
     */
    Conjunction("conj", "连词"),






    ;
    String code;

    String desc;

    WordsAttrEnum(String code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    public String getCode() {
        return code;
    }

    public String getDesc() {
        return desc;
    }


    public static WordsAttrEnum getCode(String code) {

        return Arrays.stream(WordsAttrEnum.values()).filter(e -> e.getCode().equals(code)).findFirst().orElse(null);
    }
    @Override
    public String toString() {
        return String.valueOf(code); // 或者 name(), 或者 desc
    }
}
